package com.lwgk.utils;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.res.Configuration;

import com.lwgk.AppComplication;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * created by 赵航
 * 联系微信 微信号：zhao--hang--
 * on 2019/7/12
 * --------------------------------------------------------------------------
 * 描述：电话号码的一些判断和手机设备的一些信息
 * 注意事项：
 */
public class PhoneCheckUtils {

    /**判断字符串是否为数字
     * @param str  传递的判断字符串
     * @return true为全部都是数字，false为不全部是数字
     */
    public static boolean isNumeric(String str) {
        Pattern pattern = Pattern.compile("[0-9]*");
        Matcher isNum = pattern.matcher(str);
        if (!isNum.matches()) {
            return false;
        }
        return true;
    }

    /**
     * 判断字符串是否为纯字母
     * @param data 传递的判断字符串
     * @return
     */
    public static boolean isChar(String data) {
        for (int i = data.length(); --i >= 0; ) {
            char c = data.charAt(i);
            if (((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'))) {

            } else {
                return false;
            }
        }
        return true;
    }

    /**
     * 主要用于密码必须包含字母和数字
     * @param data 核查的字符串
     * @return
     */
    public static boolean isCanBePasworld(String data){

        if (isChar(data)&&isNumeric(data)){
            return true;
        }
        return false;
    }

    /**
     * 获取该应用的版本号：
     *
     * @return 返回版本名称
     */
    public static String getAppVersionName() {
        String versionName = "";
        try {
            // ---get the package info---
            PackageManager pm = AppComplication.mContext.getPackageManager();
            PackageInfo pi = pm.getPackageInfo(AppComplication.mContext.getPackageName(), 0);
            versionName = pi.versionName;
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (versionName == null || versionName.length() <= 0) {
            versionName = "";
        }
        return versionName;
    }

    /**
     * 获取该应用版本名：
     *
     * @return 返回版本号
     */
    public static int getAppVersionCode(){
        int versionCode = 0;
        try {
            // ---get the package info---
            PackageManager pm = AppComplication.mContext.getPackageManager();
            PackageInfo pi = pm.getPackageInfo(AppComplication.mContext.getPackageName(), 0);
            versionCode = pi.versionCode;
        } catch (Exception e) {
            e.printStackTrace();
        }

        if (versionCode <=0) {
            versionCode = 0;
        }

        return versionCode;
    }

    /**

     判断当前设备是手机还是平板，代码来自 Google I/O App for Android
     @return 平板返回 True，手机返回 False
     */
    public static boolean isPad() {
        return (AppComplication.mContext.getResources().getConfiguration().screenLayout
                & Configuration.SCREENLAYOUT_SIZE_MASK)
                >= Configuration.SCREENLAYOUT_SIZE_LARGE;
    }
}
